package com.igeek.compus.study.order.controller;

import com.igeek.compus.study.order.entity.Order;
import com.igeek.compus.study.order.service.OrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

import java.util.HashMap;
import java.util.Map;

@Controller
@RequestMapping("order")
public class OrderController {

    @Autowired
    private OrderService orderService;


    /**
     * ModelAndView 既能返回view视图，也能返回数据，可以使用el表达式，也可以使用c标签
     * @return
     */
    @RequestMapping("index.do")
    public ModelAndView index() {
        System.out.println("order index");
        orderService.getOrderList(new Order());
        return new ModelAndView("/login");
    }

    /**
     * 仅跳转页面，不返回数据有两种方式
     * 1.new ModelAndView对象不放数据
     * 2.直接返回string
     * @return
     */
    @RequestMapping("index2.do")
    public String index2() {
        return "/login";
    }

    /**
     * 仅返回数据，适用于ajax，ajax根据收到的响应参数判断是否跳转，在前端做页面跳转，window.location.href = ""
     * @return
     */
    @RequestMapping("index3.do")
    // 返回数据，可以返回map对象，也可以返回json对象
    @ResponseBody
    public Map index3() {
        Map<String, String> map = new HashMap<>();
        map.put("orderCode", "23423");
        map.put("parentOrder", "34234");
        return map;
    }

}
